﻿using SqlSugar;
using Sunny.UI;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using XMFramework.HSLGateway;
using XMFramework.Models;
using XMFramework.MysqlService;

namespace XMFramework
{
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            // 中文授权示例
            if (!HslCommunication.Authorization.SetAuthorizationCode("b10ac26c-cf47-4432-b124-d7ce47f1170a"))
            {
                UIMessageDialog.ShowMessageDialog("授权失败!当前程序只能使用24小时!", UILocalize.ErrorTitle, false, UIStyle.Red);
                return; // 激活失败就退出系统
            }
            //hsl网关
            hslGateway.mqtt.SetPersistentConnection();//设置长连接

            //创建数据库，不存在：创建，  存在：不会重复创建
            //会根据连接字符串中的数据库进行创建
            var db = SqlSugarHelper.Db;
            db.DbMaintenance.CreateDatabase();//创建xmframework数据库
            //根据实体类创建表
            db.CodeFirst.InitTables(typeof(RecipeModel));//配方表
            db.CodeFirst.InitTables(typeof(CargoModel));//货运表
            db.CodeFirst.InitTables(typeof(OrderModel));//订单表
            db.CodeFirst.InitTables(typeof(ProductionOrderModel));//生产订单表
            db.CodeFirst.InitTables(typeof(DeviceModel));//设备表
            db.CodeFirst.InitTables(typeof(MoldModel));//模具表
            db.CodeFirst.InitTables(typeof(StorageModel));//仓储表
            

            // 应用
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new XMFramework());
        }
    }
}
